[INFO] cloning repository https://github.com/Azizultra32/brat
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Azizultra32/brat" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAzizultra32%2Fbrat", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAzizultra32%2Fbrat'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 70e4808815e9540eca5d6e98a4b854a5d5374382
[INFO] checking Azizultra32/brat against master#c290daa1e5274a52e54a0f49e31bd70192abc606 for pr-133502-23
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAzizultra32%2Fbrat" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Azizultra32/brat
[INFO] finished tweaking git repo https://github.com/Azizultra32/brat
[INFO] tweaked toml for git repo https://github.com/Azizultra32/brat written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Azizultra32/brat on toolchain c290daa1e5274a52e54a0f49e31bd70192abc606
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Azizultra32/brat already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zmij v1.0.14
[INFO] [stderr]   Downloaded clap v4.5.54
[INFO] [stderr]   Downloaded clap_builder v4.5.54
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] cc5c298190e679c25d35043ff5f0ca051b8ec5137e3a5f557756dcbe60a89c4c
[INFO] running `Command { std: "docker" "start" "cc5c298190e679c25d35043ff5f0ca051b8ec5137e3a5f557756dcbe60a89c4c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc5c298190e679c25d35043ff5f0ca051b8ec5137e3a5f557756dcbe60a89c4c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cc5c298190e679c25d35043ff5f0ca051b8ec5137e3a5f557756dcbe60a89c4c" "/opt/rustwide/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc5c298190e679c25d35043ff5f0ca051b8ec5137e3a5f557756dcbe60a89c4c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cc5c298190e679c25d35043ff5f0ca051b8ec5137e3a5f557756dcbe60a89c4c" "/opt/rustwide/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling zmij v1.0.14
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]    Compiling find-msvc-tools v0.1.8
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking winnow v0.7.14
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking anstyle v1.0.13
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]    Compiling cc v1.2.53
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking clap_lex v0.7.7
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking clap_builder v4.5.54
[INFO] [stderr]     Checking tower-http v0.5.2
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking libbrat-worktree v0.1.0 (/opt/rustwide/workdir/crates/libbrat-worktree)
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking clap v4.5.54
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking uuid v1.19.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking tempfile v3.24.0
[INFO] [stderr]     Checking libbrat-grite v0.1.0 (/opt/rustwide/workdir/crates/libbrat-grite)
[INFO] [stderr]     Checking tungstenite v0.24.0
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stdout] warning: fields `assignees` and `comment_count` are never read
[INFO] [stdout]   --> crates/libbrat-grite/src/client.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | struct RawIssueSummary {
[INFO] [stdout]    |        --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 79 |     assignees: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     comment_count: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RawIssueSummary` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `assignees` and `comment_count` are never read
[INFO] [stdout]    --> crates/libbrat-grite/src/client.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 114 | struct RawIssue {
[INFO] [stdout]     |        -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 122 |     assignees: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     comment_count: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RawIssue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `nonce` and `ttl_seconds` are never read
[INFO] [stdout]    --> crates/libbrat-grite/src/client.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | struct LockAcquireResponse {
[INFO] [stdout]     |        ------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 163 |     nonce: Option<String>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     ttl_seconds: Option<i64>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LockAcquireResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `key` is never read
[INFO] [stdout]    --> crates/libbrat-grite/src/client.rs:258:5
[INFO] [stdout]     |
[INFO] [stdout] 257 | struct ContextProjectSingleResponse {
[INFO] [stdout]     |        ---------------------------- field in this struct
[INFO] [stdout] 258 |     key: String,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ContextProjectSingleResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libbrat-workflow v0.1.0 (/opt/rustwide/workdir/crates/libbrat-workflow)
[INFO] [stderr]     Checking libbrat-config v0.1.0 (/opt/rustwide/workdir/crates/libbrat-config)
[INFO] [stdout] warning: fields `assignees` and `comment_count` are never read
[INFO] [stdout]   --> crates/libbrat-grite/src/client.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | struct RawIssueSummary {
[INFO] [stdout]    |        --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 79 |     assignees: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     comment_count: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RawIssueSummary` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `assignees` and `comment_count` are never read
[INFO] [stdout]    --> crates/libbrat-grite/src/client.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 114 | struct RawIssue {
[INFO] [stdout]     |        -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 122 |     assignees: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     comment_count: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RawIssue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `nonce` and `ttl_seconds` are never read
[INFO] [stdout]    --> crates/libbrat-grite/src/client.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | struct LockAcquireResponse {
[INFO] [stdout]     |        ------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 163 |     nonce: Option<String>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     ttl_seconds: Option<i64>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LockAcquireResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `key` is never read
[INFO] [stdout]    --> crates/libbrat-grite/src/client.rs:258:5
[INFO] [stdout]     |
[INFO] [stdout] 257 | struct ContextProjectSingleResponse {
[INFO] [stdout]     |        ---------------------------- field in this struct
[INFO] [stdout] 258 |     key: String,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ContextProjectSingleResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking libbrat-engine v0.1.0 (/opt/rustwide/workdir/crates/libbrat-engine)
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-tungstenite v0.24.0
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking hyper-util v0.1.19
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking libbrat-session v0.1.0 (/opt/rustwide/workdir/crates/libbrat-session)
[INFO] [stdout] warning: method `shutdown` is never used
[INFO] [stdout]    --> crates/libbrat-session/src/handle.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl MonitorHandle {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub(crate) async fn shutdown(&self) -> Result<(), SessionMonitorError> {
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `shutdown` is never used
[INFO] [stdout]    --> crates/libbrat-session/src/handle.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl MonitorHandle {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub(crate) async fn shutdown(&self) -> Result<(), SessionMonitorError> {
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking brat v0.1.0 (/opt/rustwide/workdir/crates/brat)
[INFO] [stdout] warning: unused import: `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/convoys.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use axum::routing::{get, post};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/repos.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use axum::routing::{delete, get, post};
[INFO] [stdout]   |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `patch` and `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/tasks.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use axum::routing::{get, patch, post};
[INFO] [stdout]   |                          ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/convoys.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use axum::routing::{get, post};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/repos.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use axum::routing::{delete, get, post};
[INFO] [stdout]   |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `patch` and `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/tasks.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use axum::routing::{get, patch, post};
[INFO] [stdout]   |                          ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/convoys.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use axum::routing::{get, post};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/repos.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use axum::routing::{delete, get, post};
[INFO] [stdout]   |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `patch` and `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/tasks.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use axum::routing::{get, patch, post};
[INFO] [stdout]   |                          ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DaemonState` and `RepoContext`
[INFO] [stdout]   --> crates/brat/src/api/mod.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use state::{DaemonState, RepoContext};
[INFO] [stdout]    |                 ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DaemonStatus`
[INFO] [stdout]   --> crates/brat/src/daemon/mod.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use manager::{DaemonManager, DaemonStatus};
[INFO] [stdout]    |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `events::EventEmitter`
[INFO] [stdout]   --> crates/brat/src/workflows/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use events::EventEmitter;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LockHelper` and `LockPolicy`
[INFO] [stdout]   --> crates/brat/src/workflows/mod.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use locks::{LockHelper, LockPolicy};
[INFO] [stdout]    |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/convoys.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use axum::routing::{get, post};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/repos.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use axum::routing::{delete, get, post};
[INFO] [stdout]   |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `patch` and `post`
[INFO] [stdout]  --> crates/brat/src/api/routes/tasks.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use axum::routing::{get, patch, post};
[INFO] [stdout]   |                          ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DaemonState` and `RepoContext`
[INFO] [stdout]   --> crates/brat/src/api/mod.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use state::{DaemonState, RepoContext};
[INFO] [stdout]    |                 ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DaemonStatus`
[INFO] [stdout]   --> crates/brat/src/daemon/mod.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use manager::{DaemonManager, DaemonStatus};
[INFO] [stdout]    |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `events::EventEmitter`
[INFO] [stdout]   --> crates/brat/src/workflows/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use events::EventEmitter;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LockHelper` and `LockPolicy`
[INFO] [stdout]   --> crates/brat/src/workflows/mod.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use locks::{LockHelper, LockPolicy};
[INFO] [stdout]    |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `gritee_issue_id` is never read
[INFO] [stdout]   --> crates/brat/tests/integration/daemon_optional.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | struct ConvoyCreateData {
[INFO] [stdout]    |        ---------------- field in this struct
[INFO] [stdout] 21 |     convoy_id: String,
[INFO] [stdout] 22 |     gritee_issue_id: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConvoyCreateData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `gritee_issue_id` is never read
[INFO] [stdout]   --> crates/brat/tests/integration/daemon_optional.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct TaskCreateData {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] 30 |     task_id: String,
[INFO] [stdout] 31 |     gritee_issue_id: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TaskCreateData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sessions_marked_crashed` and `worktrees_cleaned` are never read
[INFO] [stdout]   --> crates/brat/tests/integration/daemon_optional.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | struct RebuildData {
[INFO] [stdout]    |        ----------- fields in this struct
[INFO] [stdout] 47 |     sessions_checked: usize,
[INFO] [stdout] 48 |     sessions_marked_crashed: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 49 |     worktrees_cleaned: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RebuildData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LockStatusData` is never constructed
[INFO] [stdout]   --> crates/brat/tests/integration/locks.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct LockStatusData {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LockInfo` is never constructed
[INFO] [stdout]   --> crates/brat/tests/integration/locks.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct LockInfo {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LockConflict` is never constructed
[INFO] [stdout]   --> crates/brat/tests/integration/locks.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct LockConflict {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `title` is never read
[INFO] [stdout]   --> crates/brat/tests/integration/doctor_rebuild.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct ConvoyCreateData {
[INFO] [stdout]    |        ---------------- field in this struct
[INFO] [stdout] 23 |     convoy_id: String,
[INFO] [stdout] 24 |     title: String,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConvoyCreateData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `convoy_id` and `title` are never read
[INFO] [stdout]   --> crates/brat/tests/integration/doctor_rebuild.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct TaskCreateData {
[INFO] [stdout]    |        -------------- fields in this struct
[INFO] [stdout] 30 |     task_id: String,
[INFO] [stdout] 31 |     convoy_id: String,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 32 |     title: String,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TaskCreateData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sessions_marked_crashed` and `worktrees_cleaned` are never read
[INFO] [stdout]   --> crates/brat/tests/integration/doctor_rebuild.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct RebuildData {
[INFO] [stdout]    |        ----------- fields in this struct
[INFO] [stdout] 38 |     sessions_checked: usize,
[INFO] [stdout] 39 |     sessions_marked_crashed: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 40 |     worktrees_cleaned: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RebuildData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cors_origin` is never read
[INFO] [stdout]   --> crates/brat/src/api/server.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct ServerConfig {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub cors_origin: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `worktree_manager` is never read
[INFO] [stdout]    --> crates/brat/src/api/state.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct RepoContext {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub worktree_manager: Option<WorktreeManager>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ok` and `error` are never read
[INFO] [stdout]   --> crates/brat/src/commands/lock.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | struct GriteLockResponse {
[INFO] [stdout]    |        ----------------- fields in this struct
[INFO] [stdout] 56 |     #[serde(default)]
[INFO] [stdout] 57 |     ok: bool,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 58 |     data: Option<GriteLockData>,
[INFO] [stdout] 59 |     error: Option<GriteLockError>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GriteLockResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message` is never read
[INFO] [stdout]   --> crates/brat/src/commands/lock.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 77 | struct GriteLockError {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] 78 |     message: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GriteLockError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `session_monitor` is never used
[INFO] [stdout]    --> crates/brat/src/context.rs:124:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl BratContext {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn session_monitor<E: Engine + 'static>(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InvalidTask` and `RoleDisabled` are never constructed
[INFO] [stdout]   --> crates/brat/src/workflows/error.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum WorkflowError {
[INFO] [stdout]    |          ------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 38 |     InvalidTask(String),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     RoleDisabled(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WorkflowError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `disabled` is never used
[INFO] [stdout]   --> crates/brat/src/workflows/events.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl EventEmitter {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn disabled() -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `policy` is never used
[INFO] [stdout]   --> crates/brat/src/workflows/locks.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl LockHelper {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn policy(&self) -> LockPolicy {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `attempt` is never read
[INFO] [stdout]   --> crates/brat/src/workflows/refinery.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 95 | struct RetryInfo {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 99 |     attempt: u32,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RetryInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> crates/brat/src/workflows/refinery.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |     Success(String),
[INFO] [stdout]     |     ------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MergeOutcome` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 106 -     Success(String),
[INFO] [stdout] 106 +     Success(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `active_merges` and `shutdown` are never used
[INFO] [stdout]    --> crates/brat/src/workflows/refinery.rs:636:12
[INFO] [stdout]     |
[INFO] [stdout] 139 | impl RefineryWorkflow {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 636 |     pub fn active_merges(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 641 |     pub async fn shutdown(&self) -> Result<(), WorkflowError> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_session_handle` and `shutdown` are never used
[INFO] [stdout]    --> crates/brat/src/workflows/witness.rs:508:18
[INFO] [stdout]     |
[INFO] [stdout]  92 | impl<E: Engine + 'static> WitnessWorkflow<E> {
[INFO] [stdout]     | -------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 508 |     pub async fn get_session_handle(&self, session_id: &str) -> Option<MonitorHandle> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 513 |     pub async fn shutdown(&self) -> Result<(), WorkflowError> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cors_origin` is never read
[INFO] [stdout]   --> crates/brat/src/api/server.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct ServerConfig {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub cors_origin: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `worktree_manager` is never read
[INFO] [stdout]    --> crates/brat/src/api/state.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct RepoContext {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub worktree_manager: Option<WorktreeManager>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ok` and `error` are never read
[INFO] [stdout]   --> crates/brat/src/commands/lock.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | struct GriteLockResponse {
[INFO] [stdout]    |        ----------------- fields in this struct
[INFO] [stdout] 56 |     #[serde(default)]
[INFO] [stdout] 57 |     ok: bool,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 58 |     data: Option<GriteLockData>,
[INFO] [stdout] 59 |     error: Option<GriteLockError>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GriteLockResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message` is never read
[INFO] [stdout]   --> crates/brat/src/commands/lock.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 77 | struct GriteLockError {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] 78 |     message: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GriteLockError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `session_monitor` is never used
[INFO] [stdout]    --> crates/brat/src/context.rs:124:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl BratContext {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn session_monitor<E: Engine + 'static>(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InvalidTask` and `RoleDisabled` are never constructed
[INFO] [stdout]   --> crates/brat/src/workflows/error.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum WorkflowError {
[INFO] [stdout]    |          ------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 38 |     InvalidTask(String),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     RoleDisabled(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WorkflowError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `disabled` is never used
[INFO] [stdout]   --> crates/brat/src/workflows/events.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl EventEmitter {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn disabled() -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `policy` is never used
[INFO] [stdout]   --> crates/brat/src/workflows/locks.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl LockHelper {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn policy(&self) -> LockPolicy {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `attempt` is never read
[INFO] [stdout]   --> crates/brat/src/workflows/refinery.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 95 | struct RetryInfo {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 99 |     attempt: u32,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RetryInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> crates/brat/src/workflows/refinery.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |     Success(String),
[INFO] [stdout]     |     ------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MergeOutcome` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 106 -     Success(String),
[INFO] [stdout] 106 +     Success(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `active_merges` and `shutdown` are never used
[INFO] [stdout]    --> crates/brat/src/workflows/refinery.rs:636:12
[INFO] [stdout]     |
[INFO] [stdout] 139 | impl RefineryWorkflow {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 636 |     pub fn active_merges(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 641 |     pub async fn shutdown(&self) -> Result<(), WorkflowError> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_session_handle` and `shutdown` are never used
[INFO] [stdout]    --> crates/brat/src/workflows/witness.rs:508:18
[INFO] [stdout]     |
[INFO] [stdout]  92 | impl<E: Engine + 'static> WitnessWorkflow<E> {
[INFO] [stdout]     | -------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 508 |     pub async fn get_session_handle(&self, session_id: &str) -> Option<MonitorHandle> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 513 |     pub async fn shutdown(&self) -> Result<(), WorkflowError> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 39.30s
[INFO] running `Command { std: "docker" "inspect" "cc5c298190e679c25d35043ff5f0ca051b8ec5137e3a5f557756dcbe60a89c4c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc5c298190e679c25d35043ff5f0ca051b8ec5137e3a5f557756dcbe60a89c4c", kill_on_drop: false }`
[INFO] [stdout] cc5c298190e679c25d35043ff5f0ca051b8ec5137e3a5f557756dcbe60a89c4c
